home *** CD-ROM | disk | FTP | other *** search
/ Gold Medal Software 2 / Gold Medal Software Volume 2 (Gold Medal) (1994).iso / windows / win31 / macsyma.arj / MACSDEMO.EXE / DEFINT.OUT < prev    next >
Text File  |  1993-09-14  |  10KB  |  264 lines

  1.  
  2. (c1) /* DEMONSTRATION OF THE BASIC DEFINITE INTEGRATION CAPABILITIES OF MACSYMA
  3.  
  4.       The Macsyma integrator sometimes needs to know the signs of certain
  5.       quantities.  For the purposes of this demonstration, we will assume
  6.       that all symbolic parameters are positive.  If you would like to see
  7.       the full capabilities of the integrator, you should run these problems
  8.       again with ASSUME_POS:FALSE$
  9. */
  10. (assume_pos:true, showtime:true)$
  11. Time= 0 msecs
  12.  
  13. (c2) /* Some integrals on a semi-infinite line: */
  14. exp: sin(r*x)/x;
  15. Time= 0 msecs
  16. |$label(0,15,Times New Roman,$(d2$))$q(sin$paren(r$in( )x),x)
  17.  
  18. (c3) integrate(exp,x,0,inf);
  19. Time= 649 msecs
  20. |$label(0,15,Times New Roman,$(d3$))$q($greektext(p),2)
  21.  
  22. (c4) exp: sin(q*x)^2/(x^2);
  23. Time= 0 msecs
  24. |$label(0,15,Times New Roman,$(d4$))$q($sup(sin,2)$paren(q$in( )x),$sup(x,2))
  25.  
  26. (c5) integrate(exp,x,0,inf);
  27. Time= 1429 msecs
  28. |$label(0,15,Times New Roman,$(d5$))$q($greektext(p)$in( )q,2)
  29.  
  30. (c6) exp: a/(x^2+a^2);
  31. Time= 0 msecs
  32. |$label(0,15,Times New Roman,$(d6$))$q(a,$sup(x,2)$in( + )$sup(a,2))
  33.  
  34. (c7) integrate(exp,x,0,inf);
  35. Time= 329 msecs
  36. |$label(0,15,Times New Roman,$(d7$))$q($greektext(p),2)
  37.  
  38. (c8) /* An integral over a finite interval, with a singular integrand: */
  39. exp: 1/sqrt(1-x);
  40. Time= 0 msecs
  41. |$label(0,15,Times New Roman,$(d8$))$q(1,$sqrt(1$in( - )x))
  42.  
  43. (c9) integrate(exp,x,0,1);
  44. Time= 1529 msecs
  45. |$label(0,15,Times New Roman,$(d9$))2
  46.  
  47. (c10) /* For this problem, Macsyma will ask the sign of a more complicated 
  48.      quantity. Any answer will do, but we can also make an assumption in
  49.      advance, and then the query will not happen. */
  50. exp: 1/(a*x^2+b*x+c);
  51. Time= 0 msecs
  52. |$label(0,15,Times New Roman,$(d10$))$q(1,a$in( )$sup(x,2)$in( + )b$in( )x$in( + )c)
  53.  
  54. (c11) assume(4*a*c-b^2>0)$
  55. Time= 59 msecs
  56.  
  57. (c12) integrate(exp,x,minf,inf);
  58. C:\MACSD2B\library1\residu.fas being loaded.
  59. Time= 2139 msecs
  60. |$label(0,15,Times New Roman,$(d12$))$q(2$in( )$greektext(p),$sqrt(4$in( )a$in( )c$in( - )$sup(b,2)))
  61.  
  62. (c13) /* MACSYMA can integrate user-defined functions. */
  63. i(r,s,t):=(k^2+a^2)^(-r)*(k^2+b^2)^(-s)*(k^2+c^2)^(-t);
  64. Time= 0 msecs
  65. |$label(0,15,Times New Roman,$(d13$))i$paren(r$ina($, )$hinge()s$ina($, )$hinge()t)$hinge()$in( := )$sup($paren($sup(k,2)$in( + )$sup(a,2),$(,$)),$in( - )r)$in( )$sup($paren($sup(k,2)$in( + )$sup(b,2),$(,$)),$in( - )s)$in( )$sup($paren($sup(k,2)$in( + )$sup(c,2),$(,$)),$in( - )t)
  66.  
  67. (c14) /* Answer the question any way you like.  */
  68. integrate(i(1,1,0),k,0,inf);
  69. |$label(-1,15,Times New Roman,)Is  $in() $in()b$in( - )a$in() $in()  positive or negative?
  70. P;
  71.  
  72. Time= 25699 msecs
  73. |$label(0,15,Times New Roman,$(d14$))$q($greektext(p),2$in( )a$in( )$paren(b$in( - )a,$(,$))$in( )$paren(b$in( + )a,$(,$)))$hinge()$in( - )$q($greektext(p),2$in( )b$in( )$paren(b$in( - )a,$(,$))$in( )$paren(b$in( + )a,$(,$)))
  74.  
  75. (c15) /* The integrator also examines characteristics of symbolic quantities. */
  76. declare([m,n],even)$
  77. Time= 0 msecs
  78.  
  79. (c16) exp: cos(x)^m*sin(x)^n;
  80. Time= 0 msecs
  81. |$label(0,15,Times New Roman,$(d16$))$sup(cos,m)$paren(x)$hinge()$in( )$sup(sin,n)$paren(x)
  82.  
  83. (c17) integrate(exp,x,0,2*%pi);
  84. Time= 1980 msecs
  85. |$label(0,15,Times New Roman,$(d17$))2$hinge()$in( )$greektext(B)$paren($q(m$in( + )1,2)$ina($, )$hinge()$q(n$in( + )1,2))
  86.  
  87. (c18) /* It knows how to integrate expressions involving the error function ... */
  88. integrate(%e^(-x^2),x,0,inf);
  89. Time= 709 msecs
  90. |$label(0,15,Times New Roman,$(d18$))$q($sqrt($greektext(p)),2)
  91.  
  92. (c19) integrate((x^3-a*x+b)*%e^(-x^2+b*x+c),x,minf,inf);
  93. Time= 2909 msecs
  94. |$label(0,15,Times New Roman,$(d19$))$q($paren($sqrt($greektext(p))$in( )$paren($sup(b,3)$in( + )$paren(8$in( - )4$in( )a,$(,$))$in( )b,$(,$))$in( + )6$in( )$sqrt($greektext(p))$in( )b,$(,$))$in( )$sup($e(),$q(4$in( )c$in( + )$sup(b,2),4)),8)
  95.  
  96. (c20) /* ... logarithms ... */
  97. declare(k,integer)$
  98. Time= 0 msecs
  99.  
  100. (c21) exp: log(x)^k;
  101. Time= 0 msecs
  102. |$label(0,15,Times New Roman,$(d21$))$sup(log,k)$paren(x)
  103.  
  104. (c22) integrate(exp,x,0,1);
  105. Time= 3569 msecs
  106. |$label(0,15,Times New Roman,$(d22$))$sup($paren($in( - )1,$(,$)),k)$hinge()$in( )k!
  107.  
  108. (c23) exp:log(x)^2/(x^2+1);
  109. Time= 0 msecs
  110. |$label(0,15,Times New Roman,$(d23$))$q($sup(log,2)$paren(x),$sup(x,2)$in( + )1)
  111.  
  112. (c24) integrate(exp,x,0,inf);
  113. Time= 6590 msecs
  114. |$label(0,15,Times New Roman,$(d24$))$q($sup($greektext(p),3),8)
  115.  
  116. (c25) exp: log(1/x)*x^m/sqrt(1-x);
  117. Time= 0 msecs
  118. |$label(0,15,Times New Roman,$(d25$))$in( - )$q($sup(x,m)$in( )log$paren(x),$sqrt(1$in( - )x))
  119.  
  120. (c26) integrate(exp,x,0,1);
  121. C:\MACSD2B\library1\specfn.fas being loaded.
  122. Time= 3960 msecs
  123. |$label(0,15,Times New Roman,$(d26$))$in( - )$greektext(B)$paren($q(1,2)$ina($, )$hinge()m$in( + )1)$in( )$paren($sub($greektext(y),0)$paren(m$in( + )1)$in( - )$sub($greektext(y),0)$paren(m$in( + )$q(3,2)),$(,$))
  124.  
  125. (c27) /* ... trigonometric functions ... */
  126. exp: cos(x)^2-sin(x);
  127. Time= 0 msecs
  128. |$label(0,15,Times New Roman,$(d27$))$sup(cos,2)$paren(x)$hinge()$in( - )sin$paren(x)
  129.  
  130. (c28) integrate(exp,x,0,2*%pi);
  131. Time= 6649 msecs
  132. |$label(0,15,Times New Roman,$(d28$))$greektext(p)
  133.  
  134. (c29) exp: cos(x)^3*sin(x)^2;
  135. Time= 0 msecs
  136. |$label(0,15,Times New Roman,$(d29$))$sup(cos,3)$paren(x)$hinge()$in( )$sup(sin,2)$paren(x)
  137.  
  138. (c30) integrate(exp,x,3*%pi/2,3*%pi);
  139. Time= 5649 msecs
  140. |$label(0,15,Times New Roman,$(d30$))$q(2,15)
  141.  
  142. (c31) exp: cos(x)^(1/3)*sin(x)^2;
  143. Time= 59 msecs
  144. |$label(0,15,Times New Roman,$(d31$))$sup(cos,1$in(/)3)$paren(x)$hinge()$in( )$sup(sin,2)$paren(x)
  145.  
  146. (c32) integrate(exp,x,-%pi/2,%pi/2);
  147. Time= 3569 msecs
  148. |$label(0,15,Times New Roman,$(d32$))$greektext(B)$paren($q(2,3)$ina($, )$hinge()$q(3,2))
  149.  
  150. (c33) sin(x)^(1/3)*cos(x)^(1/2);
  151. Time= 0 msecs
  152. |$label(0,15,Times New Roman,$(d33$))$sqrt(cos$paren(x))$hinge()$in( )$sup(sin,1$in(/)3)$paren(x)
  153.  
  154. (c34) integrate(%,x,0,%pi/2);
  155. Time= 2089 msecs
  156. |$label(0,15,Times New Roman,$(d34$))$q($greektext(B)$paren($q(2,3)$ina($, )$hinge()$q(3,4)),2)
  157.  
  158. (c35) /* ... and hyperbolic trigonometric functions. */
  159. exp: x/(sinh(x)-%i);
  160. Time= 0 msecs
  161. |$label(0,15,Times New Roman,$(d35$))$q(x,sinh$paren(x)$in( - )$italictext(i))
  162.  
  163. (c36) integrate(exp,x,minf,inf);
  164. Time= 13570 msecs
  165. |$label(0,15,Times New Roman,$(d36$))$greektext(p)
  166.  
  167. (c37) /* Intricate singularity structure: */
  168. exp: 1/((1+x)*x^(1/2));
  169. Time= 0 msecs
  170. |$label(0,15,Times New Roman,$(d37$))$q(1,$sqrt(x)$in( )$paren(x$in( + )1,$(,$)))
  171.  
  172. (c38) integrate(exp,x,0,inf);
  173. Time= 929 msecs
  174. |$label(0,15,Times New Roman,$(d38$))$greektext(p)
  175.  
  176. (c39) exp: x^(-1/2)/(a*x^3+3)^5;
  177. Time= 0 msecs
  178. |$label(0,15,Times New Roman,$(d39$))$q(1,$sqrt(x)$in( )$sup($paren(a$in( )$sup(x,3)$in( + )3,$(,$)),5))
  179.  
  180. (c40) integrate(exp,x,0,inf);
  181. Time= 1649 msecs
  182. |$label(0,15,Times New Roman,$(d40$))$q(21505$in( )$greektext(p),3779136$in( )$sup(3,5$in(/)6)$in( )$sup(a,1$in(/)6))
  183.  
  184. (c41) /* These examples illustrate use of contour integral methods. */ 
  185. exp: (x^2+a*x+b)/(x^4+10*x^2+9);
  186. Time= 0 msecs
  187. |$label(0,15,Times New Roman,$(d41$))$q($sup(x,2)$in( + )a$in( )x$in( + )b,$sup(x,4)$in( + )10$in( )$sup(x,2)$in( + )9)
  188.  
  189. (c42) integrate(exp,x,minf,inf);
  190. Time= 990 msecs
  191. |$label(0,15,Times New Roman,$(d42$))$q($greektext(p)$in( )$paren($in( - )$italictext(i)$in( )$paren($italictext(i)$in( )$paren(b$in( - )1,$(,$))$in( - )a,$(,$))$in( - )$italictext(i)$in( )$paren(a$in( - )$q($italictext(i)$in( )$paren(b$in( - )9,$(,$)),3),$(,$)),$(,$)),8)
  192.  
  193. (c43) integrate(exp,x,0,inf);
  194. Time= 5330 msecs
  195. |$label(0,15,Times New Roman,$(d43$))$q($greektext(p)$in( )b,24)$hinge()$in( + )$q(log$paren(3)$in( )a,8)$hinge()$in( + )$q($greektext(p),8)
  196.  
  197. (c44) /* These examples have singularities on the integration path. */
  198. exp: 1/x;
  199. Time= 0 msecs
  200. |$label(0,15,Times New Roman,$(d44$))$q(1,x)
  201.  
  202. (c45) integrate(exp,x,-1,1);
  203.  
  204. Principal value.
  205. Time= 3239 msecs
  206. |$label(0,15,Times New Roman,$(d45$))0
  207.  
  208. (c46) integrate(exp,x,-a,a);
  209.  
  210. Principal value.
  211. Time= 4059 msecs
  212. |$label(0,15,Times New Roman,$(d46$))0
  213.  
  214. (c47) exp: sin(4*x)/(x^(1/2));
  215. Time= 0 msecs
  216. |$label(0,15,Times New Roman,$(d47$))$q(sin$paren(4$in( )x),$sqrt(x))
  217.  
  218. (c48) integrate(exp,x,0,inf);
  219. Time= 1099 msecs
  220. |$label(0,15,Times New Roman,$(d48$))$q($sqrt(2)$in( )$sqrt($greektext(p)),4)
  221.  
  222. (c49) /* Explicitly complex quantities are also treated. */
  223. exp: sin(x)/(x^2+1)*%e^(-2*%i*x);
  224. Time= 0 msecs
  225. |$label(0,15,Times New Roman,$(d49$))$q($sup($e(),$in( - )2$in( )$italictext(i)$in( )x)$in( )sin$paren(x),$sup(x,2)$in( + )1)
  226.  
  227. (c50) integrate(exp,x,minf,inf);
  228. Time= 2259 msecs
  229. |$label(0,15,Times New Roman,$(d50$))$in( - )$q($sup($e(),$in( - )3)$in( )$paren($sup($e(),2)$in( - )1,$(,$))$in( )$italictext(i)$in( )$greektext(p),2)
  230.  
  231. (c51) exp: (1-%i*u)^(-1)*exp(-%i*x*u)/(2*%pi);
  232. Time= 59 msecs
  233. |$label(0,15,Times New Roman,$(d51$))$q($sup($e(),$in( - )$italictext(i)$in( )u$in( )x),2$in( )$greektext(p)$in( )$paren(1$in( - )$italictext(i)$in( )u,$(,$)))
  234.  
  235. (c52) defint(exp,u,minf,inf);
  236. Time= 3509 msecs
  237. |$label(0,15,Times New Roman,$(d52$))$sup($e(),$in( - )x)
  238.  
  239. (c53) /* The following integration returns the noun form not because 
  240.    MACSYMA cannot do the integral but because INTANALYSIS is TRUE (which 
  241.    is its default) and MACSYMA cannot determine whether there are poles 
  242.    in the interval of integration.  A message to this effect is printed.  
  243.    To suppress the message, set INTANALYSIS_WARN to FALSE.  Setting 
  244.    INTANALYSIS to FALSE allows MACSYMA to proceed with the integration. */
  245. integrate(x*csch(x)*sech(x+a),x,minf,inf),intanalysis:true;
  246.  
  247. INTEGRATE could not determine whether there are poles in the
  248. interval of integration.
  249. Continuing...
  250. Time= 17909 msecs
  251. |$label(0,15,Times New Roman,$(d53$))$q(8$in( )$greektext(p)$in( )$paren(4$in( )$sup(a,2)$in( + )$sup($greektext(p),2),$(,$))$in( )$sup($e(),a),16$in( )$greektext(p)$in( )$sup($e(),2$in( )a)$in( + )16$in( )$greektext(p))
  252.  
  253. (c54) factor(integrate(x*csch(x)*sech(x+a),x,minf,inf)),intanalysis:false;
  254. Time= 10379 msecs
  255. |$label(0,15,Times New Roman,$(d54$))$q($paren(4$in( )$sup(a,2)$in( + )$sup($greektext(p),2),$(,$))$in( )$sup($e(),a),2$in( )$paren($sup($e(),2$in( )a)$in( + )1,$(,$)))
  256.  
  257. (c55) is(% = factor(exponentialize((a^2+%pi^2/4)*sech(a))));
  258. Time= 159 msecs
  259. |$label(0,15,Times New Roman,$(d55$))true
  260.  
  261. (c56) /* Cleanup */
  262. (reset(assume_pos,showtime), remvalue(exp), remfunction(i),
  263.  forget(4*a*c-b^2>0), remove([m,n],even,k,integer))$
  264.